// routes/productRoutes.js
const express = require('express');
const router = express.Router();
// 引入商品控制器（后续创建）
const productController = require('../controllers/productController') || {
  getProductList: (req, res) => res.status(200).json({ success: true, message: '商品列表待实现' }),
  getProductDetail: (req, res) => res.status(200).json({ success: true, message: '商品详情待实现' }),
  createProduct: (req, res) => res.status(200).json({ success: true, message: '创建商品待实现' }),
  updateProduct: (req, res) => res.status(200).json({ success: true, message: '更新商品待实现' }),
  deleteProduct: (req, res) => res.status(200).json({ success: true, message: '删除商品待实现' })
};
// 引入认证中间件（登录才能操作，管理员接口需额外权限）
const { authenticate, isAdmin } = require('../middleware/auth');

// 1. 公开接口（普通用户可查看商品，无需登录）
router.get('/', productController.getProductList); // 获取商品列表（积分兑换页用）
router.get('/:id', productController.getProductDetail); // 获取单个商品详情

// 2. 管理员接口（需登录+管理员权限，用 isAdmin 中间件拦截）
router.post('/', authenticate, isAdmin, productController.createProduct); // 创建商品
router.put('/:id', authenticate, isAdmin, productController.updateProduct); // 更新商品
router.delete('/:id', authenticate, isAdmin, productController.deleteProduct); // 删除商品

module.exports = router;